import java.io.BufferedReader;
import java.io.InputStreamReader;

/**
 * 双重判断：第一重用于判断是否存在实例化对象而确定是否枷锁
 * 第二重为了避免多次建立
 */
public class Singleton2 {
    private static Singleton2 singleton2;

    //添加静态只读的进程辅助对象
    private static Object object = new Object();

    private Singleton2(){

    }

    public Singleton2 getSingleton2(){
        //先判断有没有 没有的话 才能创建加锁

        if (singleton2 == null){
            synchronized (object){
                //防止 另一个快的线程 已经创建好了
                if (singleton2 == null){
                    singleton2 = new Singleton2();
                }
            }
        }
        return singleton2;
    }

}

